home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 2.iso / STUTTGART / UTIL / SYS / QUICKC / !QuickC / !Help next >
Text File  |  1988-08-01  |  8KB  |  195 lines

  1.                C development aid 1.1 [ QuickC ]
  2.               ==================================
  3.  
  4. This program acts both as a front end to the Acorn make utility, and as a
  5. stand-alone, ( ie. without !Edit, ) task window. It requires TaskWindow 0.03
  6. or later to run, which you should find in the Edit application directory.
  7. Either RMEnsure this module in your C start-up sequence, or copy it to the
  8. 'QuickC' directory. It also requires SharedCLibrary version 3.50 or above.
  9.  
  10. The features of this front-end are:
  11.  
  12.  * Single click on icon bar initiates make.
  13.  * Make runs in a background window.
  14.  * Make is suspendable.
  15.  * Make output may be saved.
  16.  * Errors highlighed.
  17.  * Goto line.
  18.  * Open source facility.
  19.  * Buttons to control make options.
  20.  * Single click on icon bar opens task window.
  21.  
  22.  
  23. =================== Using the application =====================
  24.  
  25.     OverView of development cycle
  26.  
  27.         Start QuickC application.
  28.         repeat
  29.             Register make file
  30.             repeat
  31.                 Make
  32.                 while ( errors )
  33.                     edit sources
  34.                 end while
  35.             until happy with result
  36.         until no more to do             
  37.  
  38.  
  39.     To start the application, double click on the !QuickC icon in the filer
  40. window. The QuickC icon ( 'C' ) will appear on the icon bar.
  41.  
  42.     Before you can make any C programs, you must first drag the required
  43. make file from the filer and drop it onto the C icon. This will register the
  44. make file to the Quick C application. There are two effects of this:
  45.         1. The 'Make Options' window will open, displaying default options
  46.            and the name of the make file.
  47.         2. The current selected directory is set to the file system and path
  48.            that contains the make file.
  49.     Once registered, the make file stays registered until you either register
  50. another make file or quit the program.
  51.  
  52.     To open the make file for editing, choose the 'Open' button in the 'Make
  53. Options' window.
  54.  
  55.     Once a make file is registered, a make may be performed by either choosing
  56. the 'Make' button in the 'Make Options' window, or by clicking with the left
  57. mouse button on the C icon. The 'Output' window will now open, and the make
  58. will proceed in background, showing error and warning messages in, strangely
  59. enough, the 'Output' window.
  60.  
  61.     When the Error and Warning lines appear, bringing up a menu over each line
  62. produces an option to open that file: a single left click will tell the editor
  63. to move to the source line in question. This assumes that your editor uses F5
  64. as the GotoLine dialog shortcut, ( eg. Edit, SrcEdit, StrongEd2. )
  65.  
  66.     To start a task window, single right click on the C icon. This operates
  67. in almost exactly the same way as the Edit task window, except that Ctrl
  68. characters are always ignored.
  69.  
  70.  
  71.  Make options -------------------
  72.     makefile        - The name of the current makefile
  73.     .IGNORE         - Ignores return codes from compilers.
  74.     Stamp           - Stamps files to bring the target up-to-date.
  75.     Build !Make     - Does not execute commands but echos them to a file
  76.                       '!Make' which is created in the same directory as the
  77.                       current makefile.
  78.     .SILENT         - Does not echo commands before execution.
  79.     Continue        - Continues after errors.
  80.     No execute      - Merely show commands that would be executed to bring
  81.                       the target up-to-date.
  82.     WimpSlot        - How much memory the make task will have to run in.
  83.                       Note that this memory is only used for the duration
  84.                       of the make.
  85.     Open            - Opens the current makefile into an Edit window.
  86.     Make            - Invokes make with the current options. The same effect
  87.                       may be achieved by clicking on the icon bar 'C' icon.
  88.                       This will open the 'output' window.
  89.  
  90.     A click on the menu button will give a list of the first twenty targets
  91. defined in the makefile. Choosing any of these will start a make of the
  92. chosen target.
  93.  
  94.  
  95. Output window -------------
  96.     The results of the task are shown in this window. Warnings are shown in
  97. black and errors in red. The other text will be grey.
  98.     The title of the output window gives an indication of how the task was
  99. started, along with the current WimpSlot size.
  100.  
  101.     Menu options:
  102.     Open ''         - See below.
  103.     Save =>         - Saves the contents of the output window in the normal
  104.                       RISC-OS manner.
  105.     Link            - Tracks the output as it is produced ( vis. Link on the
  106.                       Edit TaskWindow menu ).
  107.     Gain caret      - As single clicks on the output window are trapped,
  108.                       ( see below, ) the caret may be moved to the output
  109.                       window with this menu option.
  110.     Suspend         - The make may be suspended whenever active.
  111.     Resume          - The make may be resumed when suspended.
  112.  
  113.     Lines of the following format are especially useful.
  114.         "c.file", line XXX: ...
  115.     Menu over this line will give a menu option of
  116.         Open 'c.file'
  117.     Choosing this will load the source file into !Edit.
  118.     
  119.     Select over a line of the above format will send keystrokes to the
  120. current input focus to move the caret to the required line.
  121.  
  122.     Adjust in the output window will give the output window the input focus
  123. ( ie. the caret. )
  124.  
  125.  
  126. Icon Bar Icon
  127. -------------
  128.     The icon bar menu is as follows:
  129.     Info            - Standard program information.
  130.     Make options    - Opens the make options window.
  131.     New makefile    - Allows the saving of a new 'blank' makefile in the
  132.                       normal RISC-OS manner.
  133.     Quit            - Kills the task window and exits.
  134.  
  135.     Select on the C icon will initiate a make, assuming that a makefile has
  136. been registered by dropping on to either the C icon or the make options
  137. window.
  138.  
  139.     Adjust on the C icon will open a task window.
  140.  
  141.  
  142. Known problems
  143. --------------    
  144.     Quitting whilst a make is in progress may cause strange effects, such as
  145. files left open, or switching out of the desktop to complete the make.
  146.  
  147.     Dismounting and remounting the disc, or *CLOSE, will close the files for
  148. you, but remember that ALL files are closed in this way, not just the ones
  149. you want to close!!
  150.  
  151.     Sorry, but I can't find any way to kill the child task cleanly, ( apart
  152. from not trying at all )!
  153.  
  154.  
  155. The default makefile explained
  156. ------------------------------
  157.     The default makefile is available from the icon bar menu option
  158.     'New makefile'. A commented version appears below.
  159. _______________________________________________________________________
  160.  
  161. INCLUDE=                 # Additional include path
  162.                          # eg. INCLUDE=$.MyLib
  163. OBJECTS=                 # List of objects that link to form the
  164.                          # main target. eg: OBJECTS=o.main o.keyb
  165. LIBRARY=$.Clib.o.Stubs   # Which standard library to use: either
  166.                          # $.CLib.o.Stubs, or $.CLib.o.ANSILib
  167. CFLAGS=                  # Default compile flags. eg: CFLAGS=-g
  168. LFLAGS= -MAP             # Default linker flags
  169. TARGET=!RunImage         # Default target of make
  170.  
  171. .c.o:                    # Rule for creating any o.* from a c.* file
  172.     cc -c $(CFLAGS) $(INCLUDE) $<
  173.  
  174. .s.o:                    # Default rule for creating any o.* from
  175.     ASM $<               # an assembler ( s.* ) file
  176.  
  177. $(TARGET): $(OBJECTS)    # Rule for creating the main target from
  178.                          # it's depenencies
  179.     link -output !RunImage $(LFLAGS) $(OBJECTS) $(LIBRARY)
  180.  
  181. clean:                   # Rule for removing all object modules,
  182.     remove $(TARGET)     # and the final target, thus
  183.     wipe o.*             # ensuring the next make is a full one.
  184. _______________________________________________________________________
  185.  
  186.  
  187. Building your makefile
  188. ----------------------
  189.     Targets which have no dependants may be included in the make options
  190. menu by following the colon with a single space before the newline. If the
  191. space is not present, then that target will be excluded from the menu. This
  192. is useful to hide default or dangerous rules.
  193.     For more information on makefiles, refer to the documentation supplied
  194. with your C compiler, or to the Unix make manual page.
  195.